/****************************************
Table A.24
*****************************************/

* Load Census Data Cleaned and Collapsed
use "$dir/Data/Final/final_collapsed_SFE.dta", clear

gen i = birthstatefip
gen t = (birthdecade/10) + 1 // someone who is 10 when ban is put in place is treated (time 0)
gen Ei = floor(year_of_ban/10) 	// decade when unit is first treated
gen K = t-Ei 			// "relative time" num decades since treated (could be missing if never-treated)



forvalues l = 1/6 {
	gen A`l'event = K==-`l'
}

forvalues l = 0/6 {
	gen P`l'event = K==`l'
}


gen insample6treat = abs(K) <= 6 & K != .


* Interaction treatment vars
forvalues pre = 6(-1)2 {
	cap n gen cmH_Pre`pre' = cmH * A`pre'event
}

forvalues post = 0/6 {
	cap n gen cmH_Post`post' = cmH * P`post'event
}

forvalues x = 0/6 {
	cap label var cmH_Pre`x' "Pre `x'"
	cap label var cmH_Post`x' "Post `x'"
}


replace Ei = . if cmH == 0 /* Treating low CM surnames as never having faced a ban */
gen nevertreated = Ei == . /* this includes low CM surnames and those that never faced a ban */

drop if year_of_ban > 1940 /* this drops all states that banned after 1940 or never banned because they
have year of ban value missing, so control group is low cousin marriage surnames in states that banned
by 1940 */


keep if insample6treat == 1

**************************************************
** Transforming and labelling outcome variables **
**************************************************

gen ln_citypop = ln(citypop)
gen ln_occscore = ln(occscore)


* Transforming and labelling outcome variables
label var birthdecade "Birth decade"
label var cmH ">10% cousin marriage rate (-1858)"
label var birthstatefip "Birth state"
label var resstatefip "Residence state"
label var year "Census year"
label var count_dor "Num census individuals in cell"
label var occscore "Occscore"
label var ln_occscore "Income (log occscore)"
label var citypop "City size"
label var ln_citypop "Urbanization (log residence pop'n)"
label var urban "Urban"
label var farm "Residence: Farm"

foreach v of varlist(ln_occscore_nm-ln_citypop_nm){
	label var `v' "Number of individuals with non-missing outcome in cell"
}

* Surname FE
egen s = group(surname)


compress


/**************************************
Table A.24
**************************************/

eststo clear

reghdfe ln_citypop ///
	cmH ///
    cmH_P* ///
	[aweight = ln_citypop_nm] , absorb(i.i##i.t i.year i.i##i.cmH s) vce(cluster i)
	
	eststo A1
    sum ln_citypop [fw = ln_citypop_nm]
	local obs1 = r(N)
    su ln_citypop [aweight = ln_citypop_nm] if e(sample) == 1
    local meanA = string(round(r(mean), .01))
 
 
reghdfe ln_occscore ///
	cmH ///
    cmH_P* ///
	[aweight = ln_occscore_nm] , absorb(i.i##i.t i.year i.i##i.cmH s) vce(cluster i)
	
	
	eststo A2
	sum ln_occscore [fw = ln_occscore_nm]
	local obs2 = r(N)
    su ln_occscore [aweight = ln_occscore_nm] if e(sample) == 1
    local meanB = string(round(r(mean), .01))
 


estout A1 A2 using "$dir/Output/TablesFigures/results_SFE.tex", style(tex) replace ///
    keep(cmH_*) ///
	cells(b(star fmt(%9.4f)) se(par)) ///
	nolabel collabels(none) mlabels(none) starlevels(* 0.10 ** 0.05 *** 0.01) ///
	varlabels(cmH_Pre6 "-6" cmH_Pre5 "-5" ///
	cmH_Pre4 "-4" cmH_Pre3 "-3" ///
	cmH_Pre2 "-2" cmH_Post0 "0" ///
	cmH_Post1 "1" cmH_Post2 "2" ///
	cmH_Post3 "3" cmH_Post4 "4" ///
	cmH_Post5 "5" cmH_Post6 "6")

local tex " \\ \hline"
local tex "`tex' Observations & `obs1' & `obs2' \\"
local tex "`tex' Mean Dep. Var & `meanA' & `meanB'   \\"
local tex "`tex' State X Birth Decade FE & Yes & Yes \\"
local tex "`tex' State X High CM F.E. & Yes & Yes  \\"
local tex "`tex' Census year F.E. & Yes & Yes  \\"
local tex "`tex' Surnamee F.E. & Yes & Yes  \\"
local tex "`tex' \multicolumn{3}{p{8cm}}{\tiny \textit{Notes:} Standard errors clustered at state-level."
local tex "`tex' *** p<0.01, ** p<0.05, * p<0.1.} \\ \end{tabular} }"
	
esttab A1 A2 using "$dir/Output/TablesFigures/results_SFEa.tex", style(tex) replace booktabs ///
	d(*) nolabel collabels(none) noobs postfoot("`tex'") nonum ///
	mtitles("(1)" "(2)") ///
	mgroups("Urbanization (log residence pop'n')" "Occupational Income (Log)", pattern(1 1) ///
	prefix(\multicolumn{@span}{c}{) suffix(}) span erepeat(\cmidrule(lr){@span}))
	
	
	